With the advent of high-speed, high-bandwidth networking (e.g., transfer rates approaching one gigabit per second), "full-service" interactive television networks deliver a broad range of digital and analog services to a large number of user/customers. Some of these services include, for example, video-on-demand, home shopping, video games, and video conferencing, as well as the usual host of analog television programming.
These full-service networks typically include a central source location (called a "head end") that provides a stream of data and programming to subscribers. The head end itself usually comprises a bank of powerful servers connected to fast memory storage. The memory storage contains the data and applications requested by individual subscribers. As requests for data or programming are made, the head end services these requests by transporting the needed data and programming. The data and programming streams that enter into the subscriber's home are then processed by a "set-top processor" (also known as a set-top converter, home communications terminal (HCT), or the like).
In a traditional analog broadcast environment, the bandwidth is divided into multiple 6 MHz channels, each channel delivering its own program. In an interactive television system, programming, applications and data are not merely broadcast, but selectively transmitted to individuals or groups of users, who may themselves transmit information back to the head end. Consequently, bandwidth must be employed much more efficiently. To maximize efficiency, much of the information, including programming, is transmitted in digital form. In this format, one 6 MHz channel can be sliced into multiple "pipes" in a time division multiplexed manner, with each pipe carrying a different data stream.
Data may be transmitted over a network at a variable bit rate (VBR) by partitioning the data into a sequence of so-called "cells" and inputting them asynchronously into the network. One such network is the Broadband Integrated Services Digital Network (B-ISDN), which is referred to as an Asynchronous Transfer Mode (ATM) network. ATM networks allow video information to be transmitted with a variable bit rate. This, in turn, allows statistical multiplexing of data from a relatively large number of sources for transmission over a single data channel.
The ISO Moving Picture Experts Group (MPEG) audio-video coding standard provides a system multiplexing capability for communicating bit streams from several audio, video and/or auxiliary data sources. Examples of auxiliary data in a full service network are applications and their associated data, and control information. At a receiver, a system demultiplexer supplies audio packets, including at least one cell, to audio decoders, video packets, including at least one cell, to video decoders, and/or auxiliary packets, including at least one cell, to auxiliary decoders.
Without any bit rate adjustment, encoders tend to produce a variable bit rate output. The instantaneous bit rate at any time depends on the information to be transmitted, which, in turn, depends upon the detail within a video frame and the movement of images from frame-to-frame. Classic encoder technology, such as that manufactured by C-Cube of Milpitas, Calif., manipulates the encoder output using rate-controlled buffers to produce an encoder output having a constant bit rate (CBR). This transformation avoids overburdening the channel capacity. Under this scheme, constraining a relatively large burst of data to the requirements of a constant bit rate may result in some data cells or packets being discarded. However, compressed data is extremely sensitive to loss, with a maximum tolerable error on the order of 10.sup.-10 being required to avoid data errors noticeable to the viewer.
Conversely, when the quantity of information to be transmitted falls below the maximum CBR value, the conventional CBR encoder increases the encoder bit rate so that the bit rate remains at the constant maximum CBR limit. One technique for increasing the bit rate is to reduce the quantization step size, thereby enhancing picture quality. As a result, a scene that does not convey much information, such as a slow-moving scene with little detail, will be rendered with extremely high resolution. This is usually a waste of valuable bandwidth.
It is desired to find a way to take advantage of this heretofore wasted bandwidth, while at the same time maintaining reasonable video quality with an acceptable error rate.